@时光机
2年前 提问
1个回答

电子商务网页安全需要防范哪些方面

齐士忠
2年前

电子商务网页安全需要防范以下这些方面:

  • 防范跨网站攻击:对CSRF攻击的防御主要有两种方式。第一种是通过验证输入HTTP的Refer报头,在形成任何HTTP请求时,大多数浏览器都会进行配置,以便在一个叫作Refer的HTTP报头中发送原始URL,如果对它进行检测,发现它在引用一个第三方域,便可知道这是一个跨网站请求。但这种方式易受浏览器限制,因为浏览器并不是必须发送这个报头,而且有些用户可能会禁用这一功能来保护隐私。第二种方式是要求在敏感请求中包含用户相关的令牌,如要求用户在提交表单时输入用户的账号和密码,但这种方式也给用户带来了多余的操作。

  • 防范会话劫持:目前会话保护机制主要有两种。第一种是通过客户端IP地址检查进行防护,这种方式是在Cookie中保存客户端的IP地址,通过对IP地址的检测,拒绝与原IP地址不同的任何请求。第二种是通过在Cookie中设置HttpOnly标志进行防护,HttpOnly是Microsoft在浏览器中添加的一个安全特性,HttpOnly是一个标志,可以对Cookie进行标记,被标记的Cookie无法用JavaScript获取,这样攻击者就无法利用XSS漏洞获取用户的会话。

  • 防范客户端验证脆弱性:JavaScript语言的应用使网页具有互动性,JavaScript的解释由浏览器执行,不需要服务器来解释,具有反应速度快、功能强大的特点,常用来给HTML网页添加动态功能,响应用户的操作。在实际应用中JavaScript常常用来控制表单中的输入,一个安全的系统不能只依靠客户端对数据进行验证,必须将客户端验证和服务器端验证结合起来。

  • 防范SQL注入:一般可以通过白名单的方式防御,白名单验证是在用户进一步处理之前验证输入是否符合所期望的类型、长度、大小、数字范围或其他标准。白名单验证通常利用正则表达式完成,可以从数据类型、数据值、数据范围、数据内容、数据大小等方面考虑。

  • 防范XSS:不要在允许位置插入不可信数据,在向HTML元素内容插入不可信数据前对HTML解码,在向HTML常见属性插入不可信数据前进行属性解码,在向HTML URL属性插入不可信数据前进行URL解码。